8.1. Text Data Format Parsing

8.1.1. DCF

DCF is the object binary data format provided as standard by AROAPL.

encoding:

⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.dcf";

DATA ← ⟨"SAMPLE", ⊤, 4 5 ρ ⎕RAND, ⟨"SOME"⟩ ⟨"OPTIONS"⟩⟩;

⎕FCREATE ← PATH;
⎕FPUTB ← ⟨PATH, ⎕DCFE DATA⟩;

path/to/data.dcf

...

decoding:

⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.dcf";

DATA: ⟨κ[?], β, φ[? ?], ⟨κ[?]⟩[?]⟩ ← ⎕DCF ⎕FGETB PATH;
⎕ ← DATA;
⟨"SAMPLE", ⊤, 0.715031 0.715031 0.978773 0.548457 0.482434, ⟨"SOME"⟩ ⟨"OPTIONS"⟩⟩
              0.260732 0.702642 0.746769 0.945723 0.677214
              0.550083 0.655265 0.188118 0.570192 0.668504
              0.832521 0.410975 0.580929 0.558201 0.693530

8.1.2. CSV

sample csv data (raw string matrix case):

path/to/data.csv

JOHN DOE,16,1,172.6,63.6
JOHN SMITH,32,0,176.3,59.8
JANE DOE,24,1,158.2,47.9
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.csv";

CSV ← ⎕CSV ⎕FGETT PATH;
⎕ ← CSV;
⟨"JOHN DOE"⟩ ⟨"16"⟩ ⟨"1"⟩ ⟨"172.6"⟩ ⟨"63.6"⟩
⟨"JOHN SMITH"⟩ ⟨"32,0"⟩ ⟨"176.3"⟩ ⟨"59.8"⟩
⟨"JANE DOE"⟩ ⟨"24"⟩ ⟨"1"⟩ ⟨"158.2"⟩ ⟨"47.9"⟩

sample csv data (tuple structure case):

path/to/data.csv

JOHN DOE,16,1,172.6,63.6
JOHN SMITH,32,0,176.3,59.8
JANE DOE,24,1,158.2,47.9
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.csv";

CSV: ⟨κ[?], υ, β, φ, φ⟩ ← ⎕CSVT ⎕FGETT PATH;
⎕ ← CSV;
⟨"JOHN DOE", 16, ⊤, 172.6, 63.6⟩
⟨"JOHN SMITH", 32, ⊥, 176.3, 59.8⟩
⟨"JANE DOE", 24, ⊤, 158.2, 47.9⟩

sample csv data (generic type matrix case):

path/to/data.csv

8,9,6,7,5
2,3,8,6,2
9,6,5,3,5
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.csv";

CSV ← ⎕CSVM:υ ⎕FGETT PATH;
⎕ ← CSV;
8 9 6 7 5
2 3 8 6 2
9 6 5 3 5

8.1.3. JSON

sample json data:

path/to/data.json

{
    "DATA1": "STRING",
    "DATA2": true,
    "DATA3": [
        {
            "DATA4": 4
            "DATA5": 4.5
        },
        {
            "DATA4": 8
            "DATA5": 9.2
        },
        {
            "DATA4": 6
            "DATA5": 8.5
        },
    ]
}
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.json";

JSON: ⟨κ[?], β, ⟨ι, φ⟩[?]⟩ ← ⎕JSON ⎕FGETT PATH;
⎕ ← JSON;
⟨S, B, L⟩ ← JSON;
⎕ ← S;
⎕ ← B;
⎕ ← L;
⎕ ← ρL;
⟨"STRING", ⊤, ⟨4, 4.5⟩ ⟨8, 9.2⟩ ⟨6, 8.5⟩⟩
"STRING"
⊤
⟨4, 4.5⟩ ⟨8, 9.2⟩ ⟨6, 8.5⟩
3

8.1.4. XML

8.1.5. YAML

8.1.6. TOML

8.2. Binary Data Format Parsing

8.2.1. Image

⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.png";

IMAGE ← ⎕IMAGE ⎕FGETB PATH;
⎕ ← ρIMAGE;
640 480 3

8.2.1. Audio

audio (whole data):

⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.mp3";

AUDIO ← ⎕AUDIO ⎕FGETB PATH;
⟨SR, BD, DATA⟩ ← AUDIO;
⎕ ← SR;
⎕ ← BD;
⎕ ← ρDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
44100
16
2 352800

audio (partial data):

⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.mp3";

AUDIO ← ⟨350000, 100000, ⎕PAUDIO ⎕FGETB PATH⟩;
⟨SR, BD, DATA⟩ ← AUDIO;
⎕ ← SR;
⎕ ← BD;
⎕ ← ρDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
44100
16
2 2800

8.2.1. Video

video (whole data):

⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.mp4";

VIDEO ← ⎕VIDEO ⎕FGETB PATH;
⟨FPS, VDATA, ⟨SR, BD, ADATA⟩⟩ ← VIDEO;
⎕ ← FPS;
⎕ ← ρVDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
⎕ ← SR;
⎕ ← BD;
⎕ ← ρADATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
29.7
238 640 480 3
44100
16
2 352800

video (partial data):

⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";

PATH ← "path/to/data.mp4";

VIDEO ← ⟨200, 40, ⎕PVIDEO ⎕FGETB PATH⟩;
⟨FPS, VDATA, ⟨SR, BD, ADATA⟩⟩ ← VIDEO;
⎕ ← FPS;
⎕ ← ρVDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
⎕ ← SR;
⎕ ← BD;
⎕ ← ρADATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
29.7
38 640 480 3
44100
16
2 56330